package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 消费套餐对象 sys_thali
 * 
 * @author ruoyi
 * @date 2024-12-03
 */
public class SysThali extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**  */
    private Long id;

    /** 套餐名字 */
    @Excel(name = "套餐名字")
    private String name;

    /** 按月计费 */
    @Excel(name = "按月计费")
    private String monthlyBilling;

    /** 服务数量 */
    @Excel(name = "服务数量")
    private Long number;

    /** 价格（售价） */
    @Excel(name = "价格", readConverterExp = "售=价")
    private BigDecimal price;

    /** 数量计费 */
    @Excel(name = "数量计费")
    private String quantityBilling;

    /** 音频降噪 */
    @Excel(name = "音频降噪")
    private String audioDenoising;

    /** 打乱编码 */
    @Excel(name = "打乱编码")
    private String shuffleCode;

    /** 反AI算法 */
    @Excel(name = "反AI算法")
    private String reverseSide;

    /** 实时配音 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实时配音", width = 30, dateFormat = "yyyy-MM-dd")
    private String realTimeDub;

    /** 智能字幕 */
    @Excel(name = "智能字幕")
    private String intelligentSubtitles;

    /** 实时翻译 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实时翻译", width = 30, dateFormat = "yyyy-MM-dd")
    private String realTimeTranslation;

    /** 评分 */
    @Excel(name = "评分")
    private String score;

    /** 声音克隆 */
    @Excel(name = "声音克隆")
    private String soundClone;

    /** 可用几个自定义模特 */
    @Excel(name = "可用几个自定义模特")
    private String model;

    /** 可使用高级声音 */
    @Excel(name = "可使用高级声音")
    private String advancedSound;

    /** 套餐有效期 */
    @Excel(name = "套餐有效期")
    private String lifespan;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setMonthlyBilling(String monthlyBilling) 
    {
        this.monthlyBilling = monthlyBilling;
    }

    public String getMonthlyBilling() 
    {
        return monthlyBilling;
    }
    public void setNumber(Long number) 
    {
        this.number = number;
    }

    public Long getNumber() 
    {
        return number;
    }
    public void setPrice(BigDecimal price) 
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }
    public void setQuantityBilling(String quantityBilling) 
    {
        this.quantityBilling = quantityBilling;
    }

    public String getQuantityBilling() 
    {
        return quantityBilling;
    }
    public void setAudioDenoising(String audioDenoising) 
    {
        this.audioDenoising = audioDenoising;
    }

    public String getAudioDenoising() 
    {
        return audioDenoising;
    }
    public void setShuffleCode(String shuffleCode) 
    {
        this.shuffleCode = shuffleCode;
    }

    public String getShuffleCode() 
    {
        return shuffleCode;
    }
    public void setReverseSide(String reverseSide) 
    {
        this.reverseSide = reverseSide;
    }

    public String getReverseSide() 
    {
        return reverseSide;
    }
    public void setRealTimeDub(String realTimeDub)
    {
        this.realTimeDub = realTimeDub;
    }

    public String getRealTimeDub()
    {
        return realTimeDub;
    }
    public void setIntelligentSubtitles(String intelligentSubtitles) 
    {
        this.intelligentSubtitles = intelligentSubtitles;
    }

    public String getIntelligentSubtitles() 
    {
        return intelligentSubtitles;
    }
    public void setRealTimeTranslation(String realTimeTranslation)
    {
        this.realTimeTranslation = realTimeTranslation;
    }

    public String getRealTimeTranslation()
    {
        return realTimeTranslation;
    }
    public void setScore(String score) 
    {
        this.score = score;
    }

    public String getScore() 
    {
        return score;
    }
    public void setSoundClone(String soundClone) 
    {
        this.soundClone = soundClone;
    }

    public String getSoundClone() 
    {
        return soundClone;
    }
    public void setModel(String model) 
    {
        this.model = model;
    }

    public String getModel() 
    {
        return model;
    }
    public void setAdvancedSound(String advancedSound) 
    {
        this.advancedSound = advancedSound;
    }

    public String getAdvancedSound() 
    {
        return advancedSound;
    }
    public void setLifespan(String lifespan) 
    {
        this.lifespan = lifespan;
    }

    public String getLifespan() 
    {
        return lifespan;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("name", getName())
            .append("monthlyBilling", getMonthlyBilling())
            .append("number", getNumber())
            .append("price", getPrice())
            .append("quantityBilling", getQuantityBilling())
            .append("audioDenoising", getAudioDenoising())
            .append("shuffleCode", getShuffleCode())
            .append("reverseSide", getReverseSide())
            .append("realTimeDub", getRealTimeDub())
            .append("intelligentSubtitles", getIntelligentSubtitles())
            .append("realTimeTranslation", getRealTimeTranslation())
            .append("score", getScore())
            .append("soundClone", getSoundClone())
            .append("model", getModel())
            .append("advancedSound", getAdvancedSound())
            .append("lifespan", getLifespan())
            .toString();
    }
}
